<?php
/**
 * 選手選択メニューを作成する（全学年）
 * DIV ID属性をキーに表示非表示制御を前提
 */
require_once 'Smarty/Components/select.php';

/**
 * くらす
 * @author admin
 *
 */
class Components_StartingMember_MemberSelect extends Components
{
	/** テンプレートファイル名 */
	const TEMPLATE_FILE = 'memberselect.tpl';
	/** ハッシュキー：ＩＤ */
	const KEY_ID = 'ID';
	/** ハッシュキー：ＳＥＬＥＣＴ */
	const KEY_SELECT = 'SELECT';
	/** ハッシュキー：ＤＩＳＰＬＡＹ */
	const KEY_DISPLAY = 'DISPLAY';
	/** 選手選択メニューコントローラ */
	public $htmlSelectMemberList;

	/**
	 * コンストラクタ
	 * @param  $sCompileDir
	 * @param  $sCompileId
	 */
	public function __construct($sCompileDir, $sCompileId)
	{
		parent::__construct(dirname(__FILE__), $sCompileId);
	}

	/**
	 * 選手選択メニューコントローラ登録
	 * @param  $index
	 * @param  $ID
	 * @param  $htmlSelect ＨＴＭＬセレクトタグ
	 */
	public function setHtmlSelectMemberList($index, $ID, $htmlSelect)
	{
		$this->htmlSelectMemberList[$index][self::KEY_ID] = $ID;
		$this->htmlSelectMemberList[$index][self::KEY_SELECT] = $htmlSelect;
		$this->htmlSelectMemberList[$index][self::KEY_DISPLAY] = $this->_setStartDisplay($ID);
	}

	/**
	 * (non-PHPdoc)
	 * @see Smarty_Components::fetch()
	 */
	public function fetch()
	{
		$this->view->SelectMemberList = $this->htmlSelectMemberList;
		$sHtml = parent::fetch(self::TEMPLATE_FILE);
		return $sHtml;
	}

	/**
	 * HTTPリクエストから学年初期表示を設定する
	 */
	protected function _setStartDisplay($ID)
	{
		$aryDivide = explode('U', $ID);
		$index = str_replace('P', '', $aryDivide[0]);
		if ( !empty($_REQUEST['P'.$index])) {
			if ( $_REQUEST['P'.$index] == $ID ) {
				return 'block';
			}
		}
		return 'none';
	}
}